Reasoning about Behavioral Conflicts between Aspects

نویسندگان

  • Pascal Durr
  • Lodewijk Bergmans
  • Mehmet Aksit
چکیده

Aspects have been successfully promoted as a means to improve the modularization of software in the presence of crosscutting concerns. The socalled aspect interference problem is considered to be one of the remaining challenges of aspect-oriented software development: aspects may interfere with the behavior of the base code or other aspects. Especially interference between aspects is difficult to prevent, as this may be caused solely by the composition of aspects that behave correctly in isolation. A typical situation where this may occur is when multiple advices are applied at the same , or shared, join point. In this paper we explain the problem of behavioral conflicts between aspects at shared join points, illustrated by a real-world example. We present an approach for the detection of behavioral conflicts that is based on a novel abstraction model for representing the behavior of advice. This model allows the expression of both primitive and complex behavior in a simple manner that is suitable for automated conflict detection. The approach employs a set of conflict detection rules which can be used to detect both generic conflicts as well as domainor application specific conflicts. This approach is general for AOP languages, and its application to both Compose* and AspectJ is illustrated in this paper. The application to Compose* demonstrates how the use of a declarative advice language can be exploited for fully automated conflict detection, without the need to annotate the aspect behavior. The approach has been implemented and tested within the Compose* and

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Reasoning About Semantic Conflicts Between Aspects

The AOP community has successfully promoted and illustrated the power and elegance of aspect-oriented programming. One of the main problems of Aspect-oriented programming is, however, the aspect interference problem. When multiple aspects are superimposed on the same join point, undesired or incorrect behavior may emerge due to the side effects of behavior of the aspects at the join point. In t...

متن کامل

Obliviousness, Modular Reasoning, and the Behavioral Subtyping Analogy

The obliviousness property of AspectJ conflicts with the ability to reason about an AspectJ program in a modular fashion. This makes debugging and maintenance difficult. In object-oriented programming, the discipline of behavioral subtyping allows one to reason about programs modularly, despite the somewhat oblivious nature of dynamic binding; however, it is not clear what discipline would help...

متن کامل

Managing Conflicts in Reflective Agents

This chapter addresses management of conflicts in an agent by means of reflective reasoning. A structure for reflective agents is proposed within which reasoning about observation, assumption making and communication; an agent's own information state and reasoning processes; other agents' information states and reasoning processes, and combinations of these types of reflective reasoning are exp...

متن کامل

The Effectiveness of Transactional Analysis Training in Reducing Parent-Child Conflicts among Male High School Students

This study aimed to investigate the impact of transactional analysis training on parent-child conflicts among male high school students. This quasi-experimental research had a pretest-posttest control group design. The statistical population of the study was comprised of all male first graders of high school in Central Marhamat Abad district, West Azerbaijan Province, in school year 2014-15. Th...

متن کامل

Declarative & Procedural Goals in Intelligent Agent Systems1

An important concept for intelligent agent systems is goals. Goals have two aspects: declarative (a description of the state sought), and procedural (a set of plans for achieving the goal). A declarative view of goals is necessary in order to reason about important properties of goals, while a procedural view of goals is necessary to ensure that goals can be achieved efficiently in dynamic envi...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007